RNS
Part 1/3 • 9.1 KB total
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
RNS (Reticulum Network Stack) is the reference implementation of Reticulum written in Python and maintained by Mark Qvist. It is licensed under the Reticulum License ↗. The Reticulum Protocol is defined by this reference implementation and the manual ↗.cite-ref-1[1]
RNS runs on pretty much any system that can run Python 3.
Contents
Installing
See Getting Started Fast ↗ in the manual. Essentially, pip install rns.
Use rnsd to run RNS as a background or foreground service.
Configuration
Each instance of RNS has its own configuration directory, the default being ~/.reticulum. You can specify a different configuration directory with rnsd --config=<config directory>.
On first run, a configuration file will be created in this directory (eg. ~/.reticulum/config) with a basic but functional configuration. To see all options, run rnsd --exampleconfig.
Shared instance
By default, the first program to launch RNS will create a shared instance that other programs can use.
When a shared instance crashes, any programs connected to it will lose their connection. If you are running several programs that use RNS, starting and terminating at different times, consider running a master rnsd instance as a service for other programs to use on demand.cite-ref-0-2-0[2]
• rnsd handles networking and contains the transport node functionality.
• lxmd handles messaging and contains the propagation node functionality. It starts rnsd automatically on launch.
• nomadnet handles NomadNet's features including its page hosting functionality. It starts lxmd automatically on launch.
Each have their own configuration file where the functionality can be enabled/disabled.
If you only want to use a client like NomadNet or MeshChatX, you can just run that directly and it will automatically launch rnsd (if it is not already running).
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────